Unified communications represents an important component of productivity in contemporary business culture, and its success from company to company can serve as a bellwether indicator of the company's overall management success. An essential feature behind unified communications is the ability to have a single way for reaching an employee. Thus, in a fully configured unified communications environment, all messages to an employee, regardless of the format of their origin (e.g., e-mail) will reach the employee at the earliest possible moment via another format (e.g., SMS) if necessary.
Unified communications may include the integration of real-time communication services (e.g., instant messaging) with non-real time communication services (e.g., SMS). Unified communications systems typically comprise not a single system but the integration of data from a potentially unlimited set of separate communications devices and systems.
As a further representative example, unified communications permits one party (e.g., a co-worker) to send a message on one medium and have it received by another party on another medium. This process effectively transfers an activity from one communications medium to another. For example, a message recipient could receive an e-mail message from a co-worker and access it through a mobile phone.
Unified communications has analogs in the home consumer market as well. A home user may want to watch a television program or surf the Internet uninterrupted, provided, for example, that an incoming message is from anyone other than a specific person. The home user may be able control devices (e.g., a wired telephone) associated with the home cable network to implement the desired message routing.
Presence information refers to the combination of the availability of a communication recipient to be able to receive a message and that person's willingness to communicate. For example, if the message sender is online according to the presence information and currently accepts calls, the response can be sent immediately through text chat or video call. Otherwise, the communication may be sent as a non real-time message that can be accessed through a variety of media. Thus, presence information typically represents a status indicator that conveys ability and willingness of a potential communication partner.
A useful element in instant messaging and UC systems is the presence indicator associated with the names of one's collaborators. This information lets a user know if a person is present and available for communication. However, the accuracy of presence indicators is often very imprecise and sometimes completely inaccurate. Among other things, it would be useful for a presence information management system to autonomously know if a person has walked away from his/her computer and/or whether the person is even looking at the screen of his/her computer or mobile device.
Difficulties arise in synthesizing the background data related to a user's present tasks and situation. For example, some prior art systems determine if a user is “present” at his computer based upon a maximum time lag between key clicks on the user's keyboard. But the presence of key clicks does not necessarily mean that the user is available for communication, and more importantly, the absence of key clicks does not necessarily mean that the user is away from his computer. For example, the user might not be typing because he is presently reading something such as an on-line article. In other words, the user is working but is still available to receive an incoming message. Moreover, this particular user may not only be available to receive an incoming message, he may also be facing his computer, which provides a number of possible methods for reaching the user.
Many prior art systems rely upon the user to affirmatively make presence status information known to the communications system. This means that in some cases, the user is actually present but last updated his status when he wasn't—while in other cases, the user is actually not present but last updated his status when he was present. This renders the reliability of user-entered presence data prone to all types of possible error. Accordingly, unified communications systems typically prefer to determine a user's status automatically without requiring user intervention.
As an analogous problem, conventional 3D viewing systems, such as 3D video systems, often use glasses with a variety of different technologies to permit the viewer to perceive the three-dimensional (3D) effect. However, these systems typically perform poorly when the viewer views the 3D video display from an off-axis angle to the device's viewing screen. These viewing systems have limited capabilities for making corrections and adjustments based on viewer movement, positioning, and re-positioning.
Attempts to solve these problems in the prior art have tended to be either overly complicated, overly expensive, or both. For example, one of the preferred solutions in the prior art has been to use keyboard and mouse activity to sense if the user is at a given device (e.g., his computer) or not by using inactivity timeouts that last for several minutes. Some recent prior art solutions use Don/Doff sensors in a headset or an RF link with received signal strength indicator (RSSI) measurements to determine whether the user is near a given device (e.g., near his computer or wearing a headset), but none of these prior art systems can determine if the user is in front of a given device (e.g., a computer display) or if the user is looking at the device or looking away from it. The inability of present systems to readily provide this information to unified communications presence management systems complicates the successful adoption of unified communications systems as a whole because it limits the robustness of the responses that such systems can have to changing user circumstances. Similarly, the inability to determine how a viewer is positioned with respect to his 3D viewing device also complicates the successful adoption of 3D viewing systems as a whole because it also limits the robustness of the responses that such systems can have to changing user circumstances and conditions.